/**
 * Filter
 * Censors bad words.
 *
 * Cassie Chin, Stephen Smetana, Logan Widick
 * CSCE 3530 Program 2
 */

#include <stdio.h>

typedef struct Filter Filter;

/**
 * Initializes a filter.
 *
 * @param fp A file containing each word to filter. Each word is on a separate line.
 */
Filter *new_Filter(FILE *fp);

/**
 * Deletes the filter.
 *
 * @param filter The filter to delete.
 */
void delete_Filter (Filter *filter);

/**
 * Runs an input file through the filter and saves the results to the output file.
 *
 * @param filter The filter to use.
 * @param inFile The file containing the bad words.
 * @param outFile The same content as the in file but with bad words replaced by stars.
 */
void Filter_filterFile(Filter *filter, FILE* inFile, FILE *outFile);
